import FormatDate from "../../utils/FormatDate.js";
import WxValidate from "../../utils/Wxvalidate.js";
Page({

  /**
   * 页面的初始数据
   */
  data: {
    form_info:'',
    date:FormatDate.formatDate(new Date()),
    startDate:FormatDate.formatDate(new Date()),
    userinfo:{},
    hasUserInfo:false
  },

  bindDateChange: function(e) {
    this.setData({
      date: e.detail.value
    })
  },

  addData(res){
    const openid=wx.getStorageSync("openid");
    if(wx.getStorageSync("userinfo")){
      console.log('提交的要寄快递的信息：',res);
      let params = res.detail.value;
    if (!this.WxValidate.checkForm(params)) {
      //表单元素验证不通过，此处给出相应提示
        let error = this.WxValidate.errorList[0];
        console.log(error);
        switch (error.param) {
            case "name":
              wx.showToast({
                title: error.msg,
                icon:'error'
              })
              break;
            case "phone":
              wx.showToast({
                title: error.msg,
                icon:'error'
              })
              break;
            case "company":
              wx.showToast({
                title: error.msg,
                icon:'error'
              })
              break;
            case "sushehao":
              wx.showToast({
                title: error.msg,
                icon:'error'
              })
              break;
            case "qujianma":
              wx.showToast({
                title: error.msg,
                icon:'error'
              })
              break;
          }
          return false;
      }
      wx.showLoading({
        title: '上传中....'
      })
    wx.cloud.callFunction({
      name:"addSendData",
      data:{
        params,
        openid,
      }
    }).then(res => {
      console.log('订单提交成功',res);
      wx.hideLoading();
      wx.showToast({
        title: '提交成功',
      })
      // this.setData({
      //   form_info: '',
      // })                //提交成功后清空输入框
    }).catch(err => {
      console.log('订单提交失败',err);
      wx.showToast({
        title: '提交失败',
        icon:'error',
        duration:2500
      })
    })
    wx.setStorageSync("applicantData", params);
    //console.log(params);
    //wx.hideToast()
    }
    else{
      console.log('用户没有登录就提交数据');
      wx.showToast({
        title: '需登录才能提交',
        icon:'error',
        duration:3000,
        mask:true
      })
    }
    
    
  },

  initValidate() {
    let rules = {
      name: {
        required: true,
        maxlength: 15
      },
      phone: {
        required: true,
        minlength:11
      }
      ,
      sushehao:{
        required:true,
        minlength:3
      },
      company: {
        required: true,//公司的校验还需加强！！！
      }, 
      qujianma: {
        required: true,
      }
    }

    let message = {
      name: {
        required: '请输入姓名',
        maxlength: '名字不能超过15个字'
      },
      phone: {
        required: "请输入手机号码",
        minlength:"手机号少于11位"
      },
      sushehao: {
        required: "请输入宿舍号",
        minlength:"宿舍号少于3位"
      },
      company: {
        required: "请输入快递公司",
      }
      ,
      qujianma:{
        required:"请输入取件码",
      }
    }
    //实例化当前的验证规则和提示消息
    this.WxValidate = new WxValidate(rules, message);

  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.initValidate();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },


  // onInputName(e) {
  //   console.log(e);
  //   if (e.detail.value) {
  //       wx.setStorageSync('name', e.detail.value)
  //   } // 监听用户输入的信息，一旦有内容输入进去，就会使用wx.setStorageSync('userText', value)设置usertext这个key的值，使用wx.getStorageSync('userText')可以得到usertext这个key的值
  // },


  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

    let userText = wx.getStorageSync('applicantData')
        if (userText) {
            this.data.form_info = userText
            this.setData(this.data)
        } // page载入的时候先读取一次，wx.getStorageSync('userText')里面有没有内容，有内容就填充，没有则什么也不做
        console.log('缓存里的用户input信息： ',this.data.form_info);
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})